// PEM读取工具测试文件
import { getPrivateKeyString, readPemFile } from '@/api/pemReader'
import API_CONFIG from '@/api/config'

// 测试PEM文件读取功能
function testPemReader() {
  console.log('=== PEM读取工具测试开始 ===');
  
  try {
    // 测试读取完整PEM内容
    const fullPemContent = readPemFile();
    console.log('✅ 成功读取PEM文件');
    console.log('PEM文件长度:', fullPemContent.length);
    console.log('PEM文件开头:', fullPemContent.substring(0, 50));
    
    // 测试获取私钥字符串
    const privateKeyString = getPrivateKeyString();
    console.log('✅ 成功获取私钥字符串');
    console.log('私钥字符串长度:', privateKeyString.length);
    console.log('私钥字符串开头:', privateKeyString.substring(0, 50));
    
    // 测试配置文件中的私钥
    const configPrivateKey = API_CONFIG.WECHAT_PAY_CONFIG.pay_apiclient_key;
    console.log('✅ 成功从配置文件获取私钥');
    console.log('配置文件私钥长度:', configPrivateKey.length);
    console.log('配置文件私钥开头:', configPrivateKey.substring(0, 50));
    
    // 验证两个私钥是否一致
    const isMatch = privateKeyString === configPrivateKey;
    console.log('私钥一致性检查:', isMatch ? '✅ 一致' : '❌ 不一致');
    
    console.log('=== PEM读取工具测试完成 ===');
    return true;
    
  } catch (error) {
    console.error('❌ PEM读取工具测试失败:', error);
    return false;
  }
}

// 导出测试函数
export { testPemReader };

// 如果直接运行此文件，执行测试
if (typeof window !== 'undefined') {
  // 在浏览器环境中延迟执行测试
  setTimeout(() => {
    testPemReader();
  }, 1000);
}